#include <iostream>

using namespace std;

/*
 * 1、数据元素相同的数据类型
 * 2、连续的内存位置组成的
 * 定义
 *      1、数据类型  数组名[数组长度];
 *      2、数据类型  数组名[数组长度] = {值1，值2，。。。};
 *      3、数据类型  数组名[] = {值1，值2，。。。};
 */

int main() {
    int arr[] = {1,2,3,4,5,6,7,8,9,10};
    // 可以通过数组名统计整个数组占用内存大小
    cout << "数据所占内存空间大小：" << sizeof(arr) <<endl;
    // 可以通过数组名查看数组首地址
    cout << "数组首地址：" << &arr <<endl;
    cout << "数组首地址：" << arr <<endl;
    cout << "第一个元素地址：" << &arr[0] <<endl;
    cout << "第一个元素地址：" << &arr[1] <<endl;

    // 数组元素逆置
    int start = 0;
    int end = (sizeof(arr) / sizeof(arr[0])) -1;
    while (start < end) {
        int temp = arr[start];
        arr[start] = arr[end];
        arr[end] = temp;
        start++;
        end--;
    }
    for (int i = 0; i < sizeof(arr)/sizeof(arr[0]); ++i) {
        cout << i << " = " << arr[i] << endl;
    }

    return 0;
}
